package avicit.bdp.dds.dao.mapper;

import avicit.bdp.common.base.BaseDAO;
import avicit.bdp.dds.dao.entity.TaskNodes;
import com.github.pagehelper.Page;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @金航数码科技有限责任公司
 * @作者：developer
 * @邮箱：developer@avic-digital.com
 * @创建时间： 2020-09-03 14:42
 * @类说明：bdp_dds_algo_nodesDao
 * @修改记录：
 */
public interface TaskNodesMapper extends BaseDAO<TaskNodes> {
    /**
     * 根据项目id获取表集合
     *
     * @param projectId
     * @return
     */
    List<Map<String, Object>> getTableList(String projectId);

    /**
     * 根据项目id查询算法库集合
     *
     * @param projectId
     * @return
     */
    List<Map<String, Object>> getAlgoList(@Param("projectId") String projectId, @Param("engineId") String engineId, @Param("type") String type);

    List<TaskNodes> getProcessNodeList(@Param("type") String type, @Param("algoType") Integer algoType);

    /**
     * 根据条件，分页查节点列表（分页）
     * @param bean
     * @return
     */
    Page<TaskNodes> searchTreeNodeByPage(@Param("bean") TaskNodes bean, @Param("wordSecretList") List<String> wordSecretList);

    /**
     * 根据条件，查询所有符合的节点列表（不分页）
     * @param bean
     * @return
     */
    List<TaskNodes> searchTreeNodeList(@Param("bean") TaskNodes bean);
}
